﻿//========================================================================================//
//																																							//
//														[ Leafbaord v2.0 beta ]																//
//																																							//
//																					- made by whitesnake -		Last Update 2004/4/6		//
// 이 프로그램은 일반 게시판을 플래시를 통해 구현한 것으로서 모든 저작권및 사용권은 저에게 있습니다.	//
// 프로그램에 관한 문의사항이나 사용관련 허가는 whitesnake@uzoo.in으로 연락주시길 바랍니다. *^^*	//
//																																							//
//=======================================================================================//

//=======================================================================================
// 초기화. /////////////////////////////////////////////////////////////////////////////////////////////
//=======================================================================================
/*Root 고정*/	this._lockroot = true;
/*한글 사용*/	System.useCodepage = true;

admin_pwd = "1004";											// 관리자용 암호.
//db_name = "freeboard";												// 접속할 디비 이름.
cgipass = /*"leafboard2/cgi/";*/								"Start_hompy/leafboard2/cgi/";		// CGI 파일경로.
page = 1;

// 깊이 규칙(리스트 : 1000번대, 뷰 : 2000번대, 쓰기 : 3000번대)
nowDepth = 1000;												// 현재 최상위 깊이 + 1;
bestDepthTarget = "none";								// 현재 최상위 깊이에 있는 클립의 인스턴스 명.

// 텍스트 포맷 기본 설정값.
list_font = "굴림";												// 폰트 이름.
list_fontSize = 13;												// 폰트 크기.
list_fontColor = "0x000000";								// 폰트 색상.
list_fontAlign = "center";										// 폰트 정렬.
list_fontBold = false;											// 진하게 여부.
list_fontUnderline = false;									// 밑줄 여부.
N = "n";																// 기본 설정값으로 대체.

// 클로즈 버튼 설정.
btnWidth = 14;													// 클로즈 버튼의 크기
btnHeight = 14;
btnMargin = 4;													// 클로즈 버튼의 위치여백.(우상점으로부터의 여백)

//=======================================================================================
// 리스트 관련 변수. ///////////////////////////////////////////////////////////////////////////////////
//=======================================================================================
list_qty = 15;														// 한 화면에 보여줄 리스트 갯수.
list_mode = "list";												// list or search.

list_width = 700;												// 리스트 전체 가로 길이.
list_x = 25;														// 시작위치.
list_y = 15;
list_height = 20;													// 한 줄당 높이.
list_space = 5;													// 칸 간격.
list_wNo = 40;													// No 칸 넓이.
list_wName = 70;												// Name 칸 넓이.
list_wDate = 85;													// Date 칸 넓이.
list_wHit = 35;													// Hit 칸 넓이.
list_wTitle = list_width - (list_wNo + list_wName + list_wDate + list_wHit + 4*list_space);	// Title 칸 넓이.
list_hTitle = 10;													// 전체 타이틀과 리스트(텍스트필드)사이의 간격.
list_pageX = 75;//33;											// 페이지번호의 시작위치.
list_pageY = 360;
list_pageSpace = 30;										// 페이지번호 사이간격.

home_btn_x = 30;												// 쓰기 버튼 위치.
home_btn_y = 340;

write_btn_x = 683;												// 쓰기 버튼 위치.
write_btn_y = 340;

search_btn_x = 630;											// 검색 버튼 위치.
search_btn_y = 340;
search_back_x = 475;										// 검색 후 빽 버튼 위치.
search_back_y = 340;
search_x = 515;												// 검색 필드 위치.
search_y = 340;
search_width = 110;											// 검색 필드 크기.
search_height = list_height;

// 페이지 번호값을 저장할 변수.
_root.list_pageValue = new Array(12);
now_page = 1;													// 현재 페이지 번호 저장.
now_searchPage = 1;

//=======================================================================================
// 검색 관련 변수. /////////////////////////////////////////////////////////////////////////////////////
//=======================================================================================
search_bgColor = "0xffffff";
search_fontSize = 13;										// 검색 필드의 폰트 크기.
search_fontColor = "0x000000";							// 검색 필드의 폰트 색상.
search_fontAlign = "left";									// 검색 필드의 폰트 정렬.
search_keyWord = "";										// 검색어 저장.

//=======================================================================================
// 뷰 관련 변수. ///////////////////////////////////////////////////////////////////////////////////////
//=======================================================================================
view_width = 650;												// 뷰 윈도우의 가로 크기.
view_height = 22;												// 뷰 윈도우의 제목표시줄 크기.
view_bgColor = "0x0000FF";								// 뷰 윈도우의 제목표시줄 배경 색상.
view_fontSize = 13;											// 뷰 윈도우의 제목표시줄 폰트 크기.
view_fontColor = "0xffffff";									// 뷰 윈도우의 제목표시줄 폰트 색상.
view_fontAlign = "left";										// 뷰 윈도우의 제목표시줄 폰트 정렬.
view_y = 3;														// 뷰 윈도우의 제목의 세로 위치.
view_alpha = 80;												// 뷰 윈도우의 투명도.

view_memo_width = view_width;						// 메모필드의 가로크기.
view_memo_height = 330;									// 메모필드의 세로크기.
view_memo_y = view_height;							// 메모필드의 세로위치.
view_memo_fontSize = 13;								// 메모필드의 텍스트 크기.
view_memo_fontColor = "0xFFFFFF";					// 메모필드의 텍스트 색상.
view_memo_bgColor = "0x000000";					// 메모필드의 배경 색상.

//=======================================================================================
// 쓰기 관련 변수. /////////////////////////////////////////////////////////////////////////////////////
//=======================================================================================
write_width = view_width;									// 쓰기 윈도우의 가로크기.
write_height = view_height*2;							// 쓰기 윈도우의 세로크기.
write_bgColor = "0x990000";								// 쓰기 윈도우의 배경 색상.
write_fontSize = 13;											// 쓰기 윈도우의 제목표시줄 폰트 크기.
write_fontColor = "0xffffff";									// 쓰기 윈도우의 제목표시줄 폰트 색상.
write_fontAlign = "left";										// 쓰기 윈도우의 제목표시줄 폰트 정렬.
write_title_width = 50;										// [제목]의 가로 크기.
write_titleInput_width = 350;								// 제목필드의 가로 크기.
write_name_width = 50;										// [이름]의 가로 크기.
write_nameInput_width = 150;							// 이름필드의 가로 크기.
write_pwd_width = 50;										// [암호]의 가로 크기.
write_pwdInput_width = 150;								// 암호필드의 가로 크기.
write_y = 4;														// 쓰기 윈도우의 제목의 세로 위치.
write_alpha = 80;

write_memo_width = view_memo_width;			// 메모필드의 가로크기.
write_memo_height = view_memo_height;			// 메모필드의 세로크기.
write_memo_y = write_height;							// 메모필드의 세로위치.
write_memo_fontSize = 13;								// 메모필드의 텍스트 크기.
write_memo_fontColor = "0xFFFFFF";					// 메모필드의 텍스트 색상.
write_memo_bgColor = "0x990099";					// 메모필드의 배경 색상.

//=======================================================================================
// 코멘트 관련 변수. ///////////////////////////////////////////////////////////////////////////////////
//=======================================================================================
comment_width = view_width;									// 코멘트 윈도우의 가로크기.
comment_height = view_height;								// 코멘트 윈도우의 세로크기.
comment_bgColor = "0x990000";								// 코멘트 윈도우의 배경 색상.
comment_fontSize = 13;											// 코멘트 윈도우의 제목표시줄 폰트 크기.
comment_fontColor = "0xffffff";									// 코멘트 윈도우의 제목표시줄 폰트 색상.
comment_fontAlign = "left";										// 코멘트 윈도우의 제목표시줄 폰트 정렬.
//comment_title_width = 50;										// [제목]의 가로 크기.
//comment_titleInput_width = 350;								// 제목필드의 가로 크기.
comment_name_width = 50;										// [이름]의 가로 크기.
comment_nameInput_width = 150;							// 이름필드의 가로 크기.
comment_pwd_width = 50;										// [암호]의 가로 크기.
comment_pwdInput_width = 150;								// 암호필드의 가로 크기.
comment_y = 3;														// 코멘트 윈도우의 제목의 세로 위치.
comment_alpha = 80;

comment_memo_width = comment_width;				// 메모필드의 가로크기.
comment_memo_height = 110;									// 메모필드의 세로크기.
comment_memo_y = comment_height;						// 메모필드의 세로위치.
comment_memo_fontSize = 13;									// 메모필드의 텍스트 크기.
comment_memo_fontColor = "0xFFFFFF";					// 메모필드의 텍스트 색상.
comment_memo_bgColor = "0x990099";					// 메모필드의 배경 색상.

//=======================================================================================
// 재사용 함수. ////////////////////////////////////////////////////////////////////////////////////////
//=======================================================================================

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 리스트 내용 불러오는 함수.
function LoadList(p)
{
	if(p == undefined || p == 0 || p == "♡" || p == "") return;
	var list_load = new LoadVars();
	list_load.db = _root.db_name;
	list_load.page = p;
	list_load.list_qty = list_qty;
	list_load.sendAndLoad(_root.cgipass+"list.php",list_load,"POST");
	list_load.onLoad = function(success)
	{
		if(success)
		{
			// 텍스트 필드 로드.
			for(var i=1; i<=list_qty; i++)
			{
				var j = i-1;
				InputText(i, list_load["no"+j], list_load["title"+j], list_load["name"+j], list_load["date"+j], list_load["hit"+j]);
				ApplyTextFormat(i);
			}
			// 페이지 번호 로드.
			for(var i=1; i<=10; i++)
			{
				var j = i-1;
				_root.list_pageValue[i] = list_load["pno"+j];
				with(eval("list_pno"+i))
				{
					text = _root.list_pageValue[i];
					//border = true;
				}
				ApplyPageTextFormat(i, SetTextFormat_FSCABU(N,N,N,N,N,N));
			}
			list_pageValue[0] = list_load.ppage;
			list_pageValue[11] = list_load.npage;
		}
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 검색 내용 불러오는 함수.
function LoadSearch(p, keyword)
{
	if(p == undefined || p == 0 || p == "♡" || p == "") return;
	var search_load = new LoadVars();
	search_load.db = _root.db_name;
	search_load.searchS = keyword;
	search_load.page = p;
	search_load.list_qty = list_qty;
	search_load.sendAndLoad(_root.cgipass+"search.php",search_load,"POST");
	search_load.onLoad = function(success)
	{
		if(success)
		{
			// 텍스트 필드 로드.
			for(var i=1; i<=list_qty; i++)
			{
				var j = i-1;
				InputText(i, search_load["no"+j], search_load["title"+j], search_load["name"+j], search_load["date"+j], search_load["hit"+j]);
				ApplyTextFormat(i);
			}
			// 페이지 번호 로드.
			for(var i=1; i<=10; i++)
			{
				var j = i-1;
				_root.list_pageValue[i] = search_load["pno"+j];
				with(eval("list_pno"+i))
				{
					text = _root.list_pageValue[i];
					//border = true;
				}
				ApplyPageTextFormat(i, SetTextFormat_FSCABU(N,N,N,N,N,N));
			}
			list_pageValue[0] = search_load.ppage;
			list_pageValue[11] = search_load.npage;
		}
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 뷰 내용 불러오는 함수.
function LoadView(num, listNumber)
{
	var view_load = new LoadVars();
	view_load.db = _root.db_name;
	view_load.no = listNumber;
	view_load.sendAndLoad(_root.cgipass+"view.php",view_load,"POST");
	view_load.onLoad = function(success)
	{
		if(success)
		{
			_root["View"+num].title.text = "[ " + listNumber + " ]" + "[ " + view_load.name + " ] " + view_load.title;
			_root["View"+num].title.setTextFormat(SetTextFormat_FSCABU(N,view_fontSize,view_fontColor,view_fontAlign,N,N));
			_root["View"+num].memo.text = view_load.memo;
		}
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 수정 내용 불러오는 함수.
function LoadEdit(listNumber)
{
	var edit_load = new LoadVars();
	edit_load.db = _root.db_name;
	edit_load.no = listNumber;
	edit_load.sendAndLoad(_root.cgipass+"edit.php",edit_load,"POST");
	edit_load.onLoad = function(success)
	{
		if(success)
		{
			_root.WriteF.titleInput.text = edit_load.title;
			_root.WriteF.titleInput.setTextFormat(SetTextFormat_FSCABU(N,write_fontSize,write_fontColor,write_fontAlign,N,N));
			_root.WriteF.nameInput.text = edit_load.name;
			_root.WriteF.nameInput.setTextFormat(SetTextFormat_FSCABU(N,write_fontSize,write_fontColor,write_fontAlign,N,N));
			_root.WriteF.memo.text = edit_load.memo;
		}
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 수정 내용 저장하는 함수.
function SaveEdit(num, listNumber, title, name, pwd, memo)
{
	var edit_save = new LoadVars();
	edit_save.db = _root.db_name;
	edit_save.no = listNumber;
	edit_save.title = title;
	edit_save.name = name;
	edit_save.password = pwd;
	edit_save.memos = memo;
	edit_save.sendAndLoad(_root.cgipass+"edit_ok.php",edit_save,"POST");
	edit_save.onLoad = function(success)
	{
		if(success)
		{
			LoadView(num, listNumber)
			if(list_mode == "search") LoadSearch(now_searchPage, search_keyWord);
			else LoadList(now_page);
		}
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 쓰기 저장하는 함수.
function SaveWrite(title, name, pwd, memo)
{
	var write_save = new LoadVars();
	write_save.db = _root.db_name;
	write_save.title = title;
	write_save.name = name;
	write_save.password = pwd;
	write_save.memos = memo;
	write_save.sendAndLoad(_root.cgipass+"write.php",write_save,"POST");
	write_save.onLoad = function(success)
	{
		if(success)
		{
			LoadList(1);
		}
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 코멘트 저장하는 함수.
function SaveComment(num, listNumber, name, pwd, memo)
{
	var comment_save = new LoadVars();
	comment_save.db = _root.db_name;
	comment_save.parent_no = listNumber;
	comment_save.c_name = name;
	comment_save.c_password = pwd;
	comment_save.c_memo = memo;
	comment_save.sendAndLoad(_root.cgipass+"comment_ok.php",comment_save,"POST");
	comment_save.onLoad = function(success)
	{
		if(success)
		{
			LoadView(num, listNumber);
			if(list_mode == "search") LoadSearch(now_searchPage, search_keyWord);
			else LoadList(now_page);
		}
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 텍스트 포맷 설정.
function SetTextFormat_FSCABU(f,s,c,a,b,u)
{
	var list_format = new TextFormat();
	if(f == 'n')		list_format.font = list_font;									else list_format.font = f;
	if(s == 'n')		list_format.size = list_fontSize;							else list_format.size = s;
	if(c == 'n')		list_format.color = list_fontColor;						else list_format.color = c;
	if(a == 'n')		list_format.align = list_fontAlign;							else list_format.align = a;
	if(b == 'n')		list_format.bold = list_fontBold;							else list_format.bold = b;
	if(u == 'n')		list_format.underline = list_fontUnderline;			else list_format.underline = list_fontUnderline;
	
	return list_format;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 깊이 증가.
function IncDepth()
{
	_root.nowDepth++;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 깊이 감소.
function DecDepth()
{
	_root.nowDepth--;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 텍스트 필드 생성 함수.
function CreateListTextField(i)
{
	var now_x = list_x;
	var now_y = list_y + list_height + list_hTitle + ((i-1)*list_height);
	this.createTextField("list_no"+i, i, now_x, now_y, list_wNo, list_height);
	with(eval("list_no"+i))
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
	}

	now_x = now_x + list_wNo + list_space;
	this.createTextField("list_title"+i, (i+list_qty), now_x, now_y, list_wTitle, list_height);
	with(eval("list_title"+i))
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
	}
	
	now_x = now_x + list_wTitle + list_space;
	this.createTextField("list_name"+i, (i+2*list_qty), now_x, now_y, list_wName, list_height);
	with(eval("list_name"+i))
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
	}
	
	now_x = now_x + list_wName + list_space;
	this.createTextField("list_date"+i, (i+3*list_qty), now_x, now_y, list_wDate, list_height);
	with(eval("list_date"+i))
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
	}
	
	now_x = now_x + list_wDate + list_space;
	this.createTextField("list_hit"+i, (i+4*list_qty), now_x, now_y, list_wHit, list_height);
	with(eval("list_hit"+i))
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 텍스트 필드에 텍스트 입력.
function InputText(i, i_no, i_title, i_name, i_date, i_hit)
{
	eval("list_no"+i).text = i_no;
	eval("list_title"+i).text = i_title;
	eval("list_name"+i).text = i_name;
	eval("list_date"+i).text = i_date;
	eval("list_hit"+i).text = i_hit;
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 텍스트 필드의 텍스트포맷 설정.
function ApplyTextFormat(i)
{
	eval("list_no"+i).setTextFormat(SetTextFormat_FSCABU(N,N,N,N,N,N));
	eval("list_name"+i).setTextFormat(SetTextFormat_FSCABU(N,N,N,N,N,N));
	eval("list_date"+i).setTextFormat(SetTextFormat_FSCABU(N,N,N,N,N,N));
	eval("list_hit"+i).setTextFormat(SetTextFormat_FSCABU(N,N,N,N,N,N));
	eval("list_title"+i).setTextFormat(SetTextFormat_FSCABU(N,N,N,"left",N,N));
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 페이지 번호의 텍스트포맷 설정.
function ApplyPageTextFormat(i, textFormat)
{
	eval("list_pno"+i).setTextFormat(textFormat);
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 뷰 폼 생성.
function CreateViewForm(num, listNumber)
{
	_root.createEmptyMovieClip("View"+num, (2000+Number(num)));
	//bestDepthTarget = "_root.View"+num;
	with(_root["View"+num])
	{
		beginFill (view_bgColor, 100);		// Color, Alpha
		//lineStyle (5, 0xFF00FF, 100);
		moveTo (0, 0);
		lineTo (view_width, 0);
		lineTo (view_width, view_height);
		lineTo (0, view_height);
		lineTo(0,0);
		endFill();
		
		_alpha = view_alpha;
		_root["View"+num].listNo = listNumber;											// 게시물 번호 저장.
		_root["View"+num].listName = _root["list_name"+num].text;			// 게시물 작성자 이름 저장.
	}
	// 제목 필드 생성.
	_root["View"+num].createTextField("title", 1, 0, 0, (view_width - 3*(btnWidth + btnMargin)), view_height);
	with(_root["View"+num].title)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = view_y;
	}
	_root["View"+num].title.text = "Loading......";
	_root["View"+num].title.setTextFormat(SetTextFormat_FSCABU(N,view_fontSize,view_fontColor,view_fontAlign,N,N));
	
	// 드래그 버튼(투명) 생성.
	_root["View"+num].attachMovie("btn_trans", "drag", 2);
	with(_root["View"+num].drag)
	{
		_width = view_width;
		_height = view_height;
	}
	_root["View"+num].drag.onPress = function()
	{
		startDrag(this._parent);
	}
	_root["View"+num].drag.onRelease = function()
	{
		stopDrag();
	}
	
	// 클로즈 버튼 생성.
	_root["View"+num].attachMovie("btn_close", "close", 3);
	with(_root["View"+num].close)
	{
		_width = btnWidth;
		_height = btnHeight;
		_x = view_width - (_width + btnMargin);
		_y = btnMargin;
	}
	_root["View"+num].close.onRelease = function()
	{
		this._parent.removeMovieClip();
	}
	
	// 에디트 버튼 생성.
	_root["View"+num].attachMovie("btn_edit", "edit", 4);
	with(_root["View"+num].edit)
	{
		_width = btnWidth;
		_height = btnHeight;
		_x = view_width - 2*(_width + btnMargin);
		_y = btnMargin;
	}
	_root["View"+num].edit.onRollOver = function()
	{
		this._parent.comment.commentX = this._parent.comment._x;
		this._parent.comment._x -= (this._parent.edit._width - btnWidth);
	}
	_root["View"+num].edit.onRollOut = function()
	{
		this._parent.comment._x = this._parent.comment.commentX;
	}
	_root["View"+num].edit.onRelease = function()
	{
		var temp = this._parent._name.split("View");
		var num = temp[1];
		CreateWriteForm("edit", num);
	}
	
	// 코멘트 버튼 생성.
	_root["View"+num].attachMovie("btn_comment", "comment", 5);
	with(_root["View"+num].comment)
	{
		_width = btnWidth;
		_height = btnHeight;
		_x = view_width - 3*(_width + btnMargin);
		_y = btnMargin;
	}
	_root["View"+num].comment.onRelease = function()
	{
		var temp = this._parent._name.split("View");
		var num = temp[1];
		CreateCommentForm(num, this._parent.listNo);
	}
	
	// 메모 필드 생성및 위치와 크기 조절.
	_root["View"+num].attachMovie("TextArea", "memo", 6);
	_root["View"+num].memo._y = view_memo_y;
	_root["View"+num].memo.setSize(view_memo_width, view_memo_height);
	
	// 메모 스타일 설정.
	_root["View"+num].memo.editable = false;
	_root["View"+num].memo.wordWrap = true;
	_root["View"+num].memo.setStyle("fontSize", view_memo_fontSize);
	_root["View"+num].memo.setStyle("color", view_memo_fontColor);
	_root["View"+num].memo.setStyle("backgroundColor", view_memo_bgColor);
	_root["View"+num].memo.setStyle("borderStyle", "none");
	
	// 메모 내용 불러오기.
	LoadView(num, listNumber);
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 쓰기 폼 생성.(모드 변경시 수정폼으로 사용.)
function CreateWriteForm(mode, num)
{
	_root.createEmptyMovieClip("WriteF", 3000);
	//bestDepthTarget = "_root.WriteF";
	with(_root.WriteF)
	{
		beginFill (write_bgColor, 100);		// Color, Alpha
		//lineStyle (5, 0xFF00FF, 100);
		moveTo (0, 0);
		lineTo (write_width, 0);
		lineTo (write_width, write_height);
		lineTo (0, write_height);
		lineTo(0,0);
		endFill();
		
		_alpha = write_alpha;
		_root.WriteF.mode = mode;				// 현재 상태 저장.
		_root.WriteF.num = num;
	}
	
	// 메모 필드 생성및 위치와 크기 조절.
	_root.WriteF.attachMovie("TextArea", "memo", 1);
	_root.WriteF.memo._y = write_memo_y;
	_root.WriteF.memo.setSize(write_memo_width, write_memo_height);	
	
	// 메모 스타일 설정.
	_root.WriteF.memo.editable = true;
	_root.WriteF.memo.wordWrap = true;
	_root.WriteF.memo.setStyle("fontSize", write_memo_fontSize);
	_root.WriteF.memo.setStyle("color", write_memo_fontColor);
	_root.WriteF.memo.setStyle("backgroundColor", write_memo_bgColor);
	_root.WriteF.memo.setStyle("borderStyle", "none");
	
	// 닫기버튼생성.
	_root.WriteF.attachMovie("btn_close", "close", 2);
	with(_root.WriteF.close)
	{
		_width = btnWidth;
		_height = btnHeight;
		_x = write_width - (_width + btnMargin);
		_y = btnMargin;
	}
	_root.WriteF.close.onRelease = function()
	{
		_root.WriteF.removeMovieClip();
	}
	
	// 저장버튼 생성.
	_root.WriteF.attachMovie("btn_save", "save", 3);
	with(_root.WriteF.save)
	{
		_width = btnWidth;
		_height = btnHeight;
		_x = write_width - (_width + btnMargin);
		_y = btnHeight + 3*btnMargin;
	}
	_root.WriteF.save.onRelease = function()
	{
		var num = _root.WriteF.num;
		if(_root.WriteF.mode == "edit") SaveEdit(num, _root["View"+num].listNo, _root.WriteF.titleInput.text, _root.WriteF.nameInput.text, _root.WriteF.pwdInput.text, _root.WriteF.memo.text);
		else SaveWrite(_root.WriteF.titleInput.text, _root.WriteF.nameInput.text, _root.WriteF.pwdInput.text, _root.WriteF.memo.text);
		_root.WriteF.removeMovieClip();
	}
	
	//  제목, 이름, 비밀번호 필드 생성.
	// [제목]
	_root.WriteF.createTextField("title", 4, 0, 0, write_title_width, (write_height/2));
	with(_root.WriteF.title)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = write_y;
		text = " [제목] ";
	}
	_root.WriteF.title.setTextFormat(SetTextFormat_FSCABU(N,write_fontSize,write_fontColor,write_fontAlign,N,N));
	_root.WriteF.createTextField("titleInput", 5, write_title_width, 0, write_titleInput_width, (write_height/2));
	with(_root.WriteF.titleInput)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = write_y;
		if(_root.WriteF.mode == "write") text = "이곳을 클릭하시고 제목을 입력하세요.";
	}
	_root.WriteF.titleInput.setTextFormat(SetTextFormat_FSCABU(N,write_fontSize,write_fontColor,write_fontAlign,N,N));
	_root.WriteF.titleInput.onSetFocus = function()
	{
		_root.WriteF.titleInput.type = "input";
		if(_root.WriteF.mode == "write") _root.WriteF.titleInput.text = "";
	}
	_root.WriteF.titleInput.onChanged = function()
	{
		_root.WriteF.titleInput.setTextFormat(SetTextFormat_FSCABU(N,write_fontSize,write_fontColor,write_fontAlign,N,N));
	}
	// [이름]
	_root.WriteF.createTextField("name", 6, 0, 0, write_name_width, (write_height/2));
	with(_root.WriteF.name)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = write_y/2 + _height;
		text = " [이름] ";
	}
	_root.WriteF.name.setTextFormat(SetTextFormat_FSCABU(N,write_fontSize,write_fontColor,write_fontAlign,N,N));
	_root.WriteF.createTextField("nameInput", 7, write_name_width, 0, write_nameInput_width, (write_height/2));
	with(_root.WriteF.nameInput)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = write_y/2 + _height;
		if(_root.WriteF.mode == "write") text = "이름을 입력하세요.";
	}
	_root.WriteF.nameInput.setTextFormat(SetTextFormat_FSCABU(N,write_fontSize,write_fontColor,write_fontAlign,N,N));
	_root.WriteF.nameInput.onSetFocus = function()
	{
		_root.WriteF.nameInput.type = "input";
		if(_root.WriteF.mode == "write") _root.WriteF.nameInput.text = "";
	}
	_root.WriteF.nameInput.onChanged = function()
	{
		_root.WriteF.nameInput.setTextFormat(SetTextFormat_FSCABU(N,write_fontSize,write_fontColor,write_fontAlign,N,N));
	}
	// [암호]
	_root.WriteF.createTextField("pwd", 8, (write_name_width+write_nameInput_width), 0, write_pwd_width, (write_height/2));
	with(_root.WriteF.pwd)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = write_y/2 + _height;
		text = " [암호] ";
	}
	_root.WriteF.pwd.setTextFormat(SetTextFormat_FSCABU(N,write_fontSize,write_fontColor,write_fontAlign,N,N));
	_root.WriteF.createTextField("pwdInput", 9, (write_name_width+write_nameInput_width+write_pwd_width), 0, write_pwdInput_width, (write_height/2));
	with(_root.WriteF.pwdInput)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = write_y/2 + _height;
		text = "암호를 입력하세요.";
	}
	_root.WriteF.pwdInput.setTextFormat(SetTextFormat_FSCABU(N,write_fontSize,write_fontColor,write_fontAlign,N,N));
	_root.WriteF.pwdInput.onSetFocus = function()
	{
		_root.WriteF.pwdInput.type = "input";
		_root.WriteF.pwdInput.password = true;
		_root.WriteF.pwdInput.text = "";
	}
	_root.WriteF.pwdInput.onChanged = function()
	{
		_root.WriteF.pwdInput.setTextFormat(SetTextFormat_FSCABU(N,write_fontSize,write_fontColor,write_fontAlign,N,N));
	}
	
	// 수정 모드시 데이터 불러옴.
	if(mode == "edit") LoadEdit(_root["View"+num].listNo);
	
	// 탭 순서 설정.
	_root.WriteF.titleInput.tabIndex = 1;
	_root.WriteF.nameInput.tabIndex = 2;
	_root.WriteF.pwdInput.tabIndex = 3;
	_root.WriteF.memo.tabIndex = 4;
	
	// 드래그 버튼 생성.
	_root.WriteF.attachMovie("btn_trans", "drag", 10);
	with(_root.WriteF.drag)
	{
		_width = write_title_width;
		_height = write_height;
	}
	_root.WriteF.drag.onPress = function()
	{
		startDrag(_root.WriteF);
	}
	_root.WriteF.drag.onRelease = function()
	{
		stopDrag();
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 코멘트 폼 생성.
function CreateCommentForm(num, listNumber)
{
	_root.createEmptyMovieClip("CommentF", 4000);
	//bestDepthTarget = "_root.WriteF";
	with(_root.CommentF)
	{
		beginFill (comment_bgColor, 100);		// Color, Alpha
		//lineStyle (5, 0xFF00FF, 100);
		moveTo (0, 0);
		lineTo (comment_width, 0);
		lineTo (comment_width, comment_height);
		lineTo (0, comment_height);
		lineTo(0,0);
		endFill();
		
		_alpha = comment_alpha;
		
		//_root.CommentF.num = num;
		//_root.CommentF.listNumber = listNumber;
	}
	
	// 메모 필드 생성및 위치와 크기 조절.
	_root.CommentF.attachMovie("TextArea", "memo", 1);
	_root.CommentF.memo._y = comment_memo_y;
	_root.CommentF.memo.setSize(comment_memo_width, comment_memo_height);
	
	// 메모 스타일 설정.
	_root.CommentF.memo.editable = true;
	_root.CommentF.memo.wordWrap = true;
	_root.CommentF.memo.setStyle("fontSize", comment_memo_fontSize);
	_root.CommentF.memo.setStyle("color", comment_memo_fontColor);
	_root.CommentF.memo.setStyle("backgroundColor", comment_memo_bgColor);
	_root.CommentF.memo.setStyle("borderStyle", "none");
	
	// 닫기버튼생성.
	_root.CommentF.attachMovie("btn_close", "close", 2);
	with(_root.CommentF.close)
	{
		_width = btnWidth;
		_height = btnHeight;
		_x = comment_width - (_width + btnMargin);
		_y = btnMargin;
	}
	_root.CommentF.close.onRelease = function()
	{
		_root.CommentF.removeMovieClip();
	}
	
	// 저장버튼 생성.
	_root.CommentF.attachMovie("btn_save", "save", 3);
	with(_root.CommentF.save)
	{
		_width = btnWidth;
		_height = btnHeight;
		_x = comment_width - 2*(_width + btnMargin);
		_y = btnMargin;
	}
	_root.CommentF.save.onRelease = function()
	{
		SaveComment(num, listNumber, _root.CommentF.nameInput.text, _root.CommentF.pwdInput.text, _root.CommentF.memo.text);
		_root.CommentF.removeMovieClip();
	}
	
	//  제목, 이름, 비밀번호 필드 생성.
	/* [제목]
	_root.CommentF.createTextField("title", 4, 0, 0, comment_title_width, comment_height);
	with(_root.CommentF.title)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = comment_y;
		text = " [제목] ";
	}
	_root.CommentF.title.setTextFormat(SetTextFormat_FSCABU(N,comment_fontSize,comment_fontColor,comment_fontAlign,N,N));
	_root.CommentF.createTextField("titleInput", 5, comment_title_width, 0, comment_titleInput_width, comment_height);
	with(_root.CommentF.titleInput)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = comment_y;
		text = "이곳을 클릭하시고 제목을 입력하세요.";
	}
	_root.CommentF.titleInput.setTextFormat(SetTextFormat_FSCABU(N,comment_fontSize,comment_fontColor,comment_fontAlign,N,N));
	_root.CommentF.titleInput.onSetFocus = function()
	{
		_root.CommentF.titleInput.type = "input";
		_root.CommentF.titleInput.text = "";
	}
	_root.CommentF.titleInput.onChanged = function()
	{
		_root.CommentF.titleInput.setTextFormat(SetTextFormat_FSCABU(N,comment_fontSize,comment_fontColor,comment_fontAlign,N,N));
	}*/
	
	// [이름]
	_root.CommentF.createTextField("name", 6, 0, 0, comment_name_width, comment_height);
	with(_root.CommentF.name)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = comment_y;
		text = " [이름] ";
	}
	_root.CommentF.name.setTextFormat(SetTextFormat_FSCABU(N,comment_fontSize,comment_fontColor,comment_fontAlign,N,N));
	_root.CommentF.createTextField("nameInput", 7, comment_name_width, 0, comment_nameInput_width, comment_height);
	with(_root.CommentF.nameInput)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = comment_y;
		text = "이름을 입력하세요.";
	}
	_root.CommentF.nameInput.setTextFormat(SetTextFormat_FSCABU(N,comment_fontSize,comment_fontColor,comment_fontAlign,N,N));
	_root.CommentF.nameInput.onSetFocus = function()
	{
		_root.CommentF.nameInput.type = "input";
		_root.CommentF.nameInput.text = "";
	}
	_root.CommentF.nameInput.onChanged = function()
	{
		_root.CommentF.nameInput.setTextFormat(SetTextFormat_FSCABU(N,comment_fontSize,comment_fontColor,comment_fontAlign,N,N));
	}
	// [암호]
	_root.CommentF.createTextField("pwd", 8, (comment_name_width+comment_nameInput_width), 0, comment_pwd_width, comment_height);
	with(_root.CommentF.pwd)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = comment_y;
		text = " [암호] ";
	}
	_root.CommentF.pwd.setTextFormat(SetTextFormat_FSCABU(N,comment_fontSize,comment_fontColor,comment_fontAlign,N,N));
	_root.CommentF.createTextField("pwdInput", 9, (comment_name_width+comment_nameInput_width+comment_pwd_width), 0, comment_pwdInput_width, comment_height);
	with(_root.CommentF.pwdInput)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		type = "dynamic";
		_y = comment_y;
		text = "암호를 입력하세요.";
	}
	_root.CommentF.pwdInput.setTextFormat(SetTextFormat_FSCABU(N,comment_fontSize,comment_fontColor,comment_fontAlign,N,N));
	_root.CommentF.pwdInput.onSetFocus = function()
	{
		_root.CommentF.pwdInput.type = "input";
		_root.CommentF.pwdInput.password = true;
		_root.CommentF.pwdInput.text = "";
	}
	_root.CommentF.pwdInput.onChanged = function()
	{
		_root.CommentF.pwdInput.setTextFormat(SetTextFormat_FSCABU(N,comment_fontSize,comment_fontColor,comment_fontAlign,N,N));
	}
	// 탭 순서 설정.
	//_root.CommentF.titleInput.tabIndex = 1;
	_root.CommentF.nameInput.tabIndex = 1;
	_root.CommentF.pwdInput.tabIndex = 2;
	_root.CommentF.memo.tabIndex = 3;
	// 드래그 버튼 생성.
	_root.CommentF.attachMovie("btn_trans", "drag", 10);
	with(_root.CommentF.drag)
	{
		_width = comment_name_width;
		_height = comment_height;
	}
	_root.CommentF.drag.onPress = function()
	{
		startDrag(_root.CommentF);
	}
	_root.CommentF.drag.onRelease = function()
	{
		stopDrag();
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 타이틀 버튼 생성함수.
function CreateTitleBtn(title, x, y, titleDepth, btnDepth)
{
	// 버튼 타이틀 생성.
	_root.Title.attachMovie("mc_title", "title"+title, titleDepth);
	with(_root.Title["title"+title])
	{
		_x = x;
		_y = y;
		i_text.text = title;
	}
	// 버튼 생성.
	_root.list_Btn.attachMovie("btn_trans", "btn"+title, btnDepth);
	with(_root.list_Btn["btn"+title])
	{
		_width = _root.Title["title"+title]._width;
		_height = _root.Title["title"+title]._height;
		_x = x;
		_y = y + (_height/2);
	}
}

// 타이틀 버튼 소멸함수.
function RemoveTitleBtn(title)
{
	_root.Title["title"+title].removeMovieClip();
	_root.list_Btn["btn"+title].removeMovieClip();	
}

//=======================================================================================
// 일회용 함수. ////////////////////////////////////////////////////////////////////////////////////////
//=======================================================================================

///////////////////////////////////////////////////////////////////////////////////////////////////////
// 초기생성.
function FirstCreate()
{
	// 텍스트 필드 생성.
	for(var i=1; i<=list_qty; i++)
	{
		CreateListTextField(i);
	}
	
	// 전체 타이틀 생성.
	_root.createEmptyMovieClip("Title", nowDepth);
	IncDepth();
	with(_root.Title)
	{
		_y = list_y;
	}
	
	_root.Title.attachMovie("mc_title", "title_no", 1);
	_root.Title.attachMovie("mc_title", "title_title", 2);
	_root.Title.attachMovie("mc_title", "title_name", 3);
	_root.Title.attachMovie("mc_title", "title_date", 4);
	_root.Title.attachMovie("mc_title", "title_hit", 5);
	with(_root.Title.title_no)
	{
		_x = list_no1._x +12;
		i_text.text = "NO";
	}
	with(_root.Title.title_title)
	{
		_x = list_no1._x + ((list_name1._x-list_no1._x)/2);
		i_text.text = "TITLE";
	}
	with(_root.Title.title_name)
	{
		_x = list_name1._x + 15;
		i_text.text = "NAME";
	}
	with(_root.Title.title_date)
	{
		_x = list_date1._x + 28;
		i_text.text = "DATE";
	}
	with(_root.Title.title_hit)
	{
		_x = list_hit1._x + 8;
		i_text.text = "HIT";
	}
	
	// 페이지번호 필드 생성.
	for(var i=0; i<=11; i++)
	{
		/*
		_root.Title.attachMovie("mc_page", "page_no"+i, i+10);
		with(_root.Title["page_no"+i])
		{
			_x = list_pageX + list_pageSpace*(i-1);
			_y = eval("list_no"+list_qty)._y + list_hPage;
		}
		*/
		this.createTextField("list_pno"+i, ((i+1)+(5*list_qty)), list_pageX + (i*list_pageSpace), list_pageY, 35, list_height);
	}
	with(list_pno0)
	{
		text = "<<<";
		//border = true;
	}
	ApplyPageTextFormat(0, SetTextFormat_FSCABU(N,N,N,"left",true,N));
	with(list_pno11)
	{
		text = ">>>";
		//border = true;
	}
	ApplyPageTextFormat(11, SetTextFormat_FSCABU(N,N,N,"right",true,N));
	
	// 버튼을 만들 무비 클립 생성.
	_root.createEmptyMovieClip("list_Btn", nowDepth);
	IncDepth();
	
	// 페이지 버튼 생성.
	for( var i=0; i<=11; i++)
	{
		if( i == 0)
		{
			_root.list_Btn.attachMovie("btn_trans", "list_ppage", i);
			with(_root.list_Btn.list_ppage)
			{
				_width = eval("list_pno"+i)._width;
				_height = eval("list_pno"+i)._height;
				_x = eval("list_pno"+i)._x;
				_y = eval("list_pno"+i)._y;
			}
			_root.list_Btn.list_ppage.onRelease = function()
			{
				if(list_mode == "search") now_searchPage = _root.list_pageValue[0];
				else now_page = _root.list_pageValue[0];
				if(list_mode == "search") LoadSearch(now_searchPage, search_keyWord);
				else LoadList(now_page);
			}
		}else
		if(i == 11)
		{
			_root.list_Btn.attachMovie("btn_trans", "list_npage", i);
			with(_root.list_Btn.list_npage)
			{
				_width = eval("list_pno"+i)._width;
				_height = eval("list_pno"+i)._height;
				_x = eval("list_pno"+i)._x;
				_y = eval("list_pno"+i)._y;
			}
			_root.list_Btn.list_npage.onRelease = function()
			{
				if(list_mode == "search") now_searchPage = _root.list_pageValue[11];
				else now_page = _root.list_pageValue[11];
				if(list_mode == "search") LoadSearch(now_searchPage, search_keyWord);
				else LoadList(now_page);
			}
		}else
		{
			_root.list_Btn.attachMovie("btn_trans", "list_page"+i, i);
			with(_root.list_Btn["list_page"+i])
			{
				_width = eval("list_pno"+i)._width;
				_height = eval("list_pno"+i)._height;
				_x = eval("list_pno"+i)._x;
				_y = eval("list_pno"+i)._y;
			}
			_root.list_Btn["list_page"+i].onRelease = function()
			{
				var temp = this._name.split("list_page");
				var num = temp[1];
				if(list_mode == "search") now_searchPage = _root.list_pageValue[num];
				else now_page = _root.list_pageValue[num];
				if(list_mode == "search") LoadSearch(now_searchPage, search_keyWord);
				else LoadList(now_page);
			}
		}
	}
	
	// 리스트 버튼 생성.
	for(var i=1; i<=list_qty; i++)
	{
		_root.list_Btn.attachMovie("btn_trans", "list_noValue"+i, (i+20));
		with(_root.list_Btn["list_noValue"+i])
		{
			_width = list_width;
			_height = list_height;
			_x = eval("list_no"+i)._x;
			_y = eval("list_no"+i)._y;
		}
		_root.list_Btn["list_noValue"+i].onRelease = function()
		{
			var temp = this._name.split("list_noValue");
			var num = temp[1];
			var listNumber = eval("list_no"+num).text;
			
			// 뷰 폼 생성.
			CreateViewForm(num, listNumber);
		}
	}
	
	// 쓰기 버튼 생성.
	CreateTitleBtn("WRITE", write_btn_x, write_btn_y, 6, (list_qty+30));
	_root.list_Btn.btnWRITE.onRelease = function()
	{
		CreateWriteForm("write", 0);		// 쓰기모드로 동작, 넘버값은 0(무시).
	}
	
	// 검색 버튼 생성.
	CreateTitleBtn("SEARCH", search_btn_x, search_btn_y, 7, (list_qty+40));
	_root.list_Btn.btnSEARCH.onRelease = function()
	{
		list_mode = "search";
		CreateTitleBtn("BACK", search_back_x, search_back_y, 8, (list_qty+50));
		_root.list_Btn.btnBACK.onRelease = function()
		{
			list_mode = "list";
			RemoveTitleBtn("BACK");
			LoadList(now_page);
		}
		search_keyWord = _root.list_search.text;
		LoadSearch(now_searchPage, search_keyWord);
	}
	
	// 홈 버튼 생성.
	CreateTitleBtn("HOME", home_btn_x, home_btn_y, 9, (list_qty+60));
	_root.list_Btn.btnHOME.onRelease = function()
	{
		LoadList(1);
	}
	
	// 검색 필드 생성.
	_root.createTextField("list_search", (13+5*list_qty), search_x, (search_y + search_height - 2), search_width, search_height);
	with(_root.list_search)
	{
		multiline = false;
		wordWrap = false;
		border = false;
		background = true;
		backgroundColor = search_bgColor;
		type = "input";
	}
	_root.list_search.onChanged = function()
	{
		_root.list_search.setTextFormat(SetTextFormat_FSCABU(N,search_fontSize,search_fontColor,search_fontAlign,N,N));
	}
}

// 초기화.
FirstCreate();

// 리스트 불러오기.
LoadList(now_page);